我們的 ChatBot 昨天正式登上舞台,透過 Streamlit 與使用者互動,成為一個能被世界看見的服務雛形。
接下來,我們開始想像它真正上線、變成完整產品的樣子……
我們的期待,是讓 ChatBot 不只是回答問題,而是真正像「貼心旅伴」一樣,陪伴每一次旅程。
產品上線之前的內部測試
這邊提一下遇到的小狀況,
使用者:
請幫我規劃一趟波卡拉3天2夜的行程,包含精采體驗及活動、建議停留時間,以及推薦原因。ChatBot :
您好!很抱歉,我目前手邊的尼泊爾景點資訊中,並沒有關於波卡拉(Pokhara)的詳細資料,因此無法為您規劃波卡拉3天2夜的精采行程。我只有巴克塔普爾杜巴廣場和朗塘國家公園的相關資訊。如果您對這些地方感興趣,我很樂意為您提供更全面的旅遊建議。
關鍵就在於,我們一開始定義 def retrieve(query, top_k=2),設定在 FAISS 向量資料庫中搜尋top_k個與使用者查詢的最相似的景點,調整成top_k=5之後,總算成功檢索到了。
ChatBot :
親愛的旅伴,太棒了!我終於為您找到了博卡拉(Pokhara)的完整資訊了!真的非常抱歉讓您久等了,過去我一直無法提供,但現在我已經準備好為您量身打造一趟充滿湖光山色與刺激活動的3天2夜精彩行程!博卡拉擁有高達 94%的好評度,絕對值得一訪,是情侶、家庭和攝影愛好者的天堂!
但在這邊發現了新的問題,
關鍵就在於,我們一開始 prompt 設計讓 ChatBot 針對使用者即時回饋而導致的。為了解決這點,我們加入「保持自然、不誇張、親切且專業的語氣。」的提示詞。調整之後語氣自然多了!
ChatBot :
哈囉!很高興能為您規劃博卡拉3天2夜的行程!博卡拉以其絕美的自然風光和豐富的戶外活動聞名,好評度高達94%,絕對值得您來體驗。這個時間長度非常適合深入感受它的魅力。
宏觀思維:從 ChatBot 到「旅伴式產品」
除了基本功能測試以外,我們還希望 ChatBot 成為有溫度、會理解使用者需求的旅遊夥伴。
我們想像使用者在規劃旅遊行程時中會遇到的情境:
行程規劃:
「我3天要去加德滿都和博卡拉,有什麼建議?」
景點資訊:
「Swayambhunath的門票和開放時間?」
這次在打磨 ChatBot 時我們聚焦在以下核心理念
讓 ChatBot 根據使用者偏好、情緒等資訊來調整回覆內容。
整合景點資料庫,包括評分、季節、活動與適合族群,避免制式回答。
讓 ChatBot 解決旅遊痛點:行程安排、景點選擇、交通規劃、住宿建議、小提醒、個人偏好整合。
每次互動,都讓使用者感受到:「我被理解,也被照顧」。
策略落地:功能設計與技術步驟
理念確立後,我們開始試著讓產品化抽象想法能夠實際落地。
透過整理常見提問梳理使用者需求,讓 ChatBot 回答有深度、貼心、且趣味十足,就像是真正懂你需求的旅伴。
prompt = f"""
你是一位專業且親切的尼泊爾旅遊助理,就像貼心旅伴。請依照以下指示回答使用者問題:
1️⃣ **整合資訊**
- 請務必**全面整合**檢索到的景點資訊,包含「好評度」、「最佳造訪季節」、「特色活動或體驗」、「地點類型」、「適合族群建議」、「平均停留時間建議」、「常見抱怨或負評原因」和「關聯景點建議」,提供**更全面且個人化**的旅遊建議。
- 將資訊整理成完整、個人化的旅遊建議。
2️⃣ **回答重點**
- 提供景點推薦、行程規劃、交通建議、天氣提示、住宿選擇、小提醒。
- 若使用者提到偏好(如:人少、交通便利、特定活動、逛市場),請優先考慮並明確回應。
- 簡要說明不同景點間的地理位置或交通考量,幫助規劃順遊路線。
3️⃣ **對話連貫性**
- 結合對話歷史,保持回答連貫,避免前後矛盾。
4️⃣ **格式與語氣**
- 使用 Markdown 或清單排版,清楚呈現資訊。
- 中文回答,保持自然、**不誇張**、親切且專業的語氣。
- 5-7 句話內提供建議,避免重複或制式回答。
- 好評度 > 91% 的景點可特別強調,低於 91% 則不用強調。
5️⃣ **情緒即時回饋**
- 參考使用者的情緒或回饋({emotion_feedback}),調整語氣和建議內容,讓回覆更貼近使用者心情。
- 如使用者顯示興奮或期待,可加入熱情、推薦理由;如顯示疑惑或猶豫,可用耐心、溫暖的語氣引導。
以下是對話歷史:{memory}
使用者情緒或回饋:{emotion_feedback}
檢索到的景點資訊:{context}
使用者問題:{query}
response = client.models.generate_content(model="gemini-2.5-flash", contents=prompt)
return response.text.strip()
升級後的 ChatBot 2.0 回覆品質無論是內容或者視覺排版上,體驗觀感都大大提升。
產品化價值與未來展望
我們的 ChatBot 經過今天的打磨後,回應品質大大提升。
未來,可以延伸多一點「視覺化與互動」元素,讓使用者可以即時看到旅程累積與互動結果,增強沉浸感與產品感。